import re
import scrapy
from bs4 import BeautifulSoup
from scrapy.http import Request
from DemoSpider.items import DemospiderItem



'''
爬虫道德
    别使用for不间断的爬取别人网站的数据
    

反爬虫，

'''
class MySpider(scrapy.Spider):
    # 唯一不重复
    name = 'DemoSpider'
    allowed_domains = ['x23us.com']
    bash_url = 'https://www.x23us.com/class/'
    postfix = '.html'

    # def start_requests(self):
    #     for i in range(1, 11):
    #         url = self.bash_url + str(i) + '_1' + self.postfix
    #         yield Request(url, self.parse)
    #
    # # 这里是注释
    # def parse(self, response):
    #     # 这里的class_  主要有个下划线 '   _   '
    #     # 获取a元素最后一个元素的值
    #     max_num = BeautifulSoup(response.text, 'lxml').find('div', class_='pagelink').find_all('a')[-1].get_text()
    #     # 截取  排除 后面7位字符串
    #     base_url = str(response.url)[:-7]
    #     for num in range(1, int(max_num) + 1):
    #         url = base_url + '_' + str(num) + '' + self.postfix
    #         yield Request(url, callback=self.get_name)
    #
    # def get_name(self, response):
    #     # 获取所有符合tr 并且bgcolor = '#FFFFFF'的元素【其实是获取每个书本的tr】,通过浏览器查看想要获取元素的样式
    #     # 【坑坑坑】这里要注意，bgcolor不能有下划线，跟上面的class_不一样
    #     trs = BeautifulSoup(response.text, 'lxml').find_all('tr', bgcolor='#FFFFFF')
    #     for tr in trs:
    #         text = tr.find_all('td')[0].find_all('a')[-1].get_text()
    #         print(text)
